\hypertarget{digital__filter_8h}{}\section{digital\+\_\+filter.\+h File Reference}
\label{digital__filter_8h}\index{digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}}
{\ttfamily \#include $<$stdint.\+h$>$}\\*
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{digital__filter_8h_a28aa591cfe6328dd6e2be9ea66b4bc08}{filter\+\_\+fft} (int dir, int m, float $\ast$real, float $\ast$imag)
\item 
void \hyperlink{digital__filter_8h_ab38670431273d7911181ed1995cad0bf}{filter\+\_\+dft} (int dir, int len, float $\ast$real, float $\ast$imag)
\item 
void \hyperlink{digital__filter_8h_aea16418c2e9b49973ebd4c177aee5cd9}{filter\+\_\+fftshift} (float $\ast$data, int len)
\item 
void \hyperlink{digital__filter_8h_a7f156b4552279b28cd215e3d6b5029a4}{filter\+\_\+hamming} (float $\ast$data, int len)
\item 
void \hyperlink{digital__filter_8h_a92d49a4d3160b4adaf2d7e8d5add81b5}{filter\+\_\+zero\+Pad} (float $\ast$data, float $\ast$result, int data\+Len, int result\+Len)
\item 
void \hyperlink{digital__filter_8h_afc096d228da3a5e8ee0f351ca1744c64}{filter\+\_\+create\+\_\+fir\+\_\+lowpass} (float $\ast$filter\+\_\+vector, float f\+\_\+break, int bits, int use\+\_\+hamming)
\item 
float \hyperlink{digital__filter_8h_a44eefadd8114b5348abc0f826b648af3}{filter\+\_\+run\+\_\+fir\+\_\+iteration} (float $\ast$vector, float $\ast$filter, int bits, uint32\+\_\+t offset)
\item 
void \hyperlink{digital__filter_8h_a7765a5faf69dfa0f59b865535bb7d80e}{filter\+\_\+add\+\_\+sample} (float $\ast$buffer, float sample, int bits, uint32\+\_\+t $\ast$offset)
\end{DoxyCompactItemize}


\subsection{Function Documentation}
\hypertarget{digital__filter_8h_a7765a5faf69dfa0f59b865535bb7d80e}{}\index{digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}!filter\+\_\+add\+\_\+sample@{filter\+\_\+add\+\_\+sample}}
\index{filter\+\_\+add\+\_\+sample@{filter\+\_\+add\+\_\+sample}!digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}}
\subsubsection[{filter\+\_\+add\+\_\+sample(float $\ast$buffer, float sample, int bits, uint32\+\_\+t $\ast$offset)}]{\setlength{\rightskip}{0pt plus 5cm}void filter\+\_\+add\+\_\+sample (
\begin{DoxyParamCaption}
\item[{float $\ast$}]{buffer, }
\item[{float}]{sample, }
\item[{int}]{bits, }
\item[{uint32\+\_\+t $\ast$}]{offset}
\end{DoxyParamCaption}
)}\label{digital__filter_8h_a7765a5faf69dfa0f59b865535bb7d80e}
Add sample to buffer 
\begin{DoxyParams}{Parameters}
{\em buffer} & The buffer to add the sample to \\
\hline
{\em sample} & The sample to add \\
\hline
{\em bits} & The length of the buffer in bits \\
\hline
{\em offset} & Pointer to the current offset in the buffer. Will be updated in this call and wrapped at the length of this buffer. \\
\hline
\end{DoxyParams}
\hypertarget{digital__filter_8h_afc096d228da3a5e8ee0f351ca1744c64}{}\index{digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}!filter\+\_\+create\+\_\+fir\+\_\+lowpass@{filter\+\_\+create\+\_\+fir\+\_\+lowpass}}
\index{filter\+\_\+create\+\_\+fir\+\_\+lowpass@{filter\+\_\+create\+\_\+fir\+\_\+lowpass}!digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}}
\subsubsection[{filter\+\_\+create\+\_\+fir\+\_\+lowpass(float $\ast$filter\+\_\+vector, float f\+\_\+break, int bits, int use\+\_\+hamming)}]{\setlength{\rightskip}{0pt plus 5cm}void filter\+\_\+create\+\_\+fir\+\_\+lowpass (
\begin{DoxyParamCaption}
\item[{float $\ast$}]{filter\+\_\+vector, }
\item[{float}]{f\+\_\+break, }
\item[{int}]{bits, }
\item[{int}]{use\+\_\+hamming}
\end{DoxyParamCaption}
)}\label{digital__filter_8h_afc096d228da3a5e8ee0f351ca1744c64}
\hypertarget{digital__filter_8h_ab38670431273d7911181ed1995cad0bf}{}\index{digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}!filter\+\_\+dft@{filter\+\_\+dft}}
\index{filter\+\_\+dft@{filter\+\_\+dft}!digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}}
\subsubsection[{filter\+\_\+dft(int dir, int len, float $\ast$real, float $\ast$imag)}]{\setlength{\rightskip}{0pt plus 5cm}void filter\+\_\+dft (
\begin{DoxyParamCaption}
\item[{int}]{dir, }
\item[{int}]{len, }
\item[{float $\ast$}]{real, }
\item[{float $\ast$}]{imag}
\end{DoxyParamCaption}
)}\label{digital__filter_8h_ab38670431273d7911181ed1995cad0bf}
\hypertarget{digital__filter_8h_a28aa591cfe6328dd6e2be9ea66b4bc08}{}\index{digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}!filter\+\_\+fft@{filter\+\_\+fft}}
\index{filter\+\_\+fft@{filter\+\_\+fft}!digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}}
\subsubsection[{filter\+\_\+fft(int dir, int m, float $\ast$real, float $\ast$imag)}]{\setlength{\rightskip}{0pt plus 5cm}void filter\+\_\+fft (
\begin{DoxyParamCaption}
\item[{int}]{dir, }
\item[{int}]{m, }
\item[{float $\ast$}]{real, }
\item[{float $\ast$}]{imag}
\end{DoxyParamCaption}
)}\label{digital__filter_8h_a28aa591cfe6328dd6e2be9ea66b4bc08}
\hypertarget{digital__filter_8h_aea16418c2e9b49973ebd4c177aee5cd9}{}\index{digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}!filter\+\_\+fftshift@{filter\+\_\+fftshift}}
\index{filter\+\_\+fftshift@{filter\+\_\+fftshift}!digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}}
\subsubsection[{filter\+\_\+fftshift(float $\ast$data, int len)}]{\setlength{\rightskip}{0pt plus 5cm}void filter\+\_\+fftshift (
\begin{DoxyParamCaption}
\item[{float $\ast$}]{data, }
\item[{int}]{len}
\end{DoxyParamCaption}
)}\label{digital__filter_8h_aea16418c2e9b49973ebd4c177aee5cd9}
\hypertarget{digital__filter_8h_a7f156b4552279b28cd215e3d6b5029a4}{}\index{digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}!filter\+\_\+hamming@{filter\+\_\+hamming}}
\index{filter\+\_\+hamming@{filter\+\_\+hamming}!digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}}
\subsubsection[{filter\+\_\+hamming(float $\ast$data, int len)}]{\setlength{\rightskip}{0pt plus 5cm}void filter\+\_\+hamming (
\begin{DoxyParamCaption}
\item[{float $\ast$}]{data, }
\item[{int}]{len}
\end{DoxyParamCaption}
)}\label{digital__filter_8h_a7f156b4552279b28cd215e3d6b5029a4}
\hypertarget{digital__filter_8h_a44eefadd8114b5348abc0f826b648af3}{}\index{digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}!filter\+\_\+run\+\_\+fir\+\_\+iteration@{filter\+\_\+run\+\_\+fir\+\_\+iteration}}
\index{filter\+\_\+run\+\_\+fir\+\_\+iteration@{filter\+\_\+run\+\_\+fir\+\_\+iteration}!digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}}
\subsubsection[{filter\+\_\+run\+\_\+fir\+\_\+iteration(float $\ast$vector, float $\ast$filter, int bits, uint32\+\_\+t offset)}]{\setlength{\rightskip}{0pt plus 5cm}float filter\+\_\+run\+\_\+fir\+\_\+iteration (
\begin{DoxyParamCaption}
\item[{float $\ast$}]{vector, }
\item[{float $\ast$}]{filter, }
\item[{int}]{bits, }
\item[{uint32\+\_\+t}]{offset}
\end{DoxyParamCaption}
)}\label{digital__filter_8h_a44eefadd8114b5348abc0f826b648af3}
\hypertarget{digital__filter_8h_a92d49a4d3160b4adaf2d7e8d5add81b5}{}\index{digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}!filter\+\_\+zero\+Pad@{filter\+\_\+zero\+Pad}}
\index{filter\+\_\+zero\+Pad@{filter\+\_\+zero\+Pad}!digital\+\_\+filter.\+h@{digital\+\_\+filter.\+h}}
\subsubsection[{filter\+\_\+zero\+Pad(float $\ast$data, float $\ast$result, int data\+Len, int result\+Len)}]{\setlength{\rightskip}{0pt plus 5cm}void filter\+\_\+zero\+Pad (
\begin{DoxyParamCaption}
\item[{float $\ast$}]{data, }
\item[{float $\ast$}]{result, }
\item[{int}]{data\+Len, }
\item[{int}]{result\+Len}
\end{DoxyParamCaption}
)}\label{digital__filter_8h_a92d49a4d3160b4adaf2d7e8d5add81b5}
